//引入封装好的新的实例
import http from './index'
//引入nodeAPI 
import qsString from 'querystring'


/* -------------------  菜单接口  ---------------------- */
//菜单列表
export function menuList() {
    return http.get('/menulist?istree=true')
}
//菜单添加
export function menuAdd(data) {
    return http.post('/menuadd', qsString.stringify(data))
}

//菜单一条数据删除 
export function menuDelete(data) {
    return http.post('/menudelete', qsString.stringify(data))
}

//菜单一条数据详情
export function menuInfo(params) {
    return http.get('/menuinfo', {
        params
    })
}

//菜单修改
export function menuEdit(data) {
    return http.post('/menuedit', qsString.stringify(data))
}

/* ------------------------  角色接口  ---------------------- */
//角色列表
export function roleList() {
    return http.get('/rolelist')
}
//角色添加
export function roleAdd(data) {
    return http.post('/roleadd', qsString.stringify(data))
}

//角色一条数据删除 
export function roleDelete(data) {
    return http.post('/roledelete', qsString.stringify(data))
}

//角色一条数据详情
export function roleInfo(params) {
    return http.get('/roleinfo', {
        params
    })
}

//角色修改
export function roleEdit(data) {
    return http.post('/roleedit', qsString.stringify(data))
}


/* ------------------------  管理员接口  ---------------------- */
//管理员列表(分页 )
export function userList(params) {
    return http.get('/userlist', {
        params,
    })
}
//管理员添加
export function userAdd(data) {
    return http.post('/useradd', qsString.stringify(data))
}

//管理员一条数据删除 
export function userDelete(data) {
    return http.post('/userdelete', qsString.stringify(data))
}

//管理员一条数据详情
export function userInfo(params) {
    return http.get('/userinfo', {
        params
    })
}

//管理员修改
export function userEdit(data) {
    return http.post('/useredit', qsString.stringify(data))
}

//管理员总条数
export function getCount() {
    return http.get('/usercount')
}

//管理员登录
export function userLogin(data) {
    return http.post('/userlogin', qsString.stringify(data))
}

/* -------------------  封装分类接口  ------------------ */
//分类添加
export function addCate(data) {
    let file = new FormData()//实例化formdata
    for (let i in data) {
        file.append(i, data[i])//添加
    }
    return http.post("/cateadd", file);
}
//分类编辑
export function postEditCate(data) {
    let file = new FormData()//实例化formdata
    for (let i in data) {
        file.append(i, data[i])//添加
    }
    return http.post("/cateedit", file);
}
//分类单条删除
export function deleteCate(data) {
    return http.post("/catedelete", qsString.stringify(data));
}
//分类列表
export function getCateList() {
    return http.get("/catelist", {
        params: {
            istree: true,
        },
    });
}
//分类单条查询
export function getCateInfo(params) {
    return http.get("/cateinfo", {
        params,
    });
}

/*---------------- 商品规格管理接口 ----------------*/
//商品规格添加
export function getSpecsAdd(data) {
    return http.post("/specsadd", data);
}
//商品规格列表
export function getSpecsList(params) {
    return http.get("/specslist", {
        params,
    });
}
//商品规格获取（一条）
export function getSpecsInfo(params) {
    return http.get("/specsinfo", {
        params,
    });
}
//商品规格修改
export function getSpecsEdit(data) {
    return http.post("/specsedit", data);
}
//商品规格删除
export function getSpecsDelete(data) {
    return http.post("/specsdelete", data);
}
//商品规格总数（用于计算分页)
export function getSpecsCount() {
    return http.get("/specscount");
}

/*-------------- 商品管理接口 -------------*/
//商品管理添加
export function getGoodsAdd(data) {
    //因为是带有文件上传，所以入参要利用js去转化它的格式
    let file = new FormData();
    //利用循环对象的方式给数据data转化
    for (let i in data) {
        file.append(i, data[i]);
    }
    return http.post("/goodsadd", file);
}
//商品管理列表
export function getGoodsList(params) {
    return http.get("/goodslist", {
        params,
    });
}
//商品管理获取（一条）
export function getGoodsInfo(params) {
    return http.get("/goodsinfo", {
        params,
    });
}
//商品管理修改
export function getGoodsEdit(data) {
    //因为是带有文件上传，所以入参要利用js去转化它的格式
    let file = new FormData();
    //利用循环对象的方式给数据data转化
    for (let i in data) {
        file.append(i, data[i]);
    }
    return http.post("/goodsedit", file);
}
//商品管理删除
export function getGoodsDelete(data) {
    return http.post("/goodsdelete", data);
}
//商品管理总数（用于计算分页)
export function getGoodsCount() {
    return http.get("/goodscount");
}
